package com.newshub.monitor.service;

import java.time.LocalDateTime;
import java.util.Map;

/**
 * 性能分析服务接口
 * 整合慢查询分析和性能报表功能
 */
public interface PerformanceAnalysisService {
    
    /**
     * 获取慢查询列表
     */
    Map<String, Object> getSlowQueries(String sqlType, String tableName,
                                      LocalDateTime startTime, LocalDateTime endTime,
                                      Integer pageNum, Integer pageSize);
    
    /**
     * 获取慢查询统计
     */
    Map<String, Object> getSlowQueryStats(LocalDateTime startTime, LocalDateTime endTime);
    
    /**
     * 获取慢查询趋势
     */
    Map<String, Object> getSlowQueryTrend(String sqlType, LocalDateTime startTime, 
                                         LocalDateTime endTime, String interval);
    
    /**
     * 获取性能报表
     */
    Map<String, Object> getPerformanceReport(LocalDateTime startTime, LocalDateTime endTime, String reportType);
    
    /**
     * 获取性能优化建议
     */
    Map<String, Object> getOptimizationSuggestions();
    
    /**
     * 获取数据库性能指标
     */
    Map<String, Object> getDatabaseMetrics();
}
